Skip to content

feat(recursion): allow N-level deep self-recursion population#44

Merged
faessler merged 1 commit into
mainfrom
feat/recursion-population
Jun 17, 2026
Merged

feat(recursion): allow N-level deep self-recursion population#44
faessler merged 1 commit into
mainfrom
feat/recursion-population

Conversation

@faessler

Copy link
Copy Markdown
Owner

For some time now it has been requested that recursion is added, so that it's possible to populate a modal that references a modal which has already been populated.

Example:

Without recursion (default):

{
  "title": "The internet's Own boy",
  "related": [
    { "title": "This shrimp is awesome" }
  ]
}

With recursion:

{
  "title": "The internet's Own boy",
  "related": [
    {
      "title": "This shrimp is awesome",
      "author": { "name": "David Doe" },
      "category": { "name": "nature" },
      "blocks": [ ... ],
      "related": [ /* stops here — only ids */ ]
    }
  ]
}

Config:

Recursion can be enabled for each modelUID individually:

"populate-all": {
  config: {
    recursion: {
      "api::article.article": 1,
    },
  },
}

Solves: #16

@faessler faessler self-assigned this Jun 17, 2026
@faessler faessler added the enhancement New feature or request label Jun 17, 2026
@faessler faessler force-pushed the feat/recursion-population branch from 9799c95 to 839f664 Compare June 17, 2026 04:55
@faessler

Copy link
Copy Markdown
Owner Author

@faessler

Copy link
Copy Markdown
Owner Author

Integration tests pass locally. They're for reasons super flanky in gh actions.

@faessler faessler merged commit 5403761 into main Jun 17, 2026
2 of 3 checks passed
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.6.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant